home *** CD-ROM | disk | FTP | other *** search
- In diesem Archiv befinden sich die übersetzten Files, die in der folgenden Message
- aus dem MAUS-Netz angesprochen wurden.
- Gruß,
-
- Karsten Isakovic
-
- Email: KI@B.MAUS.DE Post: Karsten Isakovic
- KI@B Wilmesdorferstr.82
- KI%B@2:242/2.6 1000 Berlin 12
- KI%MAUS B@ZERMAUS.ZER
- ----------------------------------------------------------------------------------
-
- Gruppe: ATARI-EXP
- L.I...... Mint-Hintergrund-Prozesse
- Kommentar zu A32014@AC
-
- ID:A7644@B
- Von : Karsten Isakovic @ B (So, 01.03.92 10:33)
-
- Ich habe mal ein paar Messages bezüglich MiNT aus der MAUS kopiert, die sich
- mit Euren Fragen befassen:
-
- Themen:
- - Langsameres Abarbeiten von nachgestarteten Prozessen in GEM-Programmen
- - Shells
- - Ausgaben von nachgestarteten Prozessen ansehen
- - Probleme mit MiNT & NVDI
- - BGACC und Anhalten nachgestarter Pozesse
-
- ##############################################################################
- Thema: Langsameres Abarbeiten von nachgestarteten Prozessen in GEM-Programmen
-
- Von : Karsten Isakovic @ B (Sa, 21.02.92 20:25)
-
- SH>Aber nun zu meinem momentanen Problem: In früheren Versionen war es kein
- SH>Problem, neben irgendwelchen GEM-Applikationen was im Hintergrund laufen zu
-
- Dies liegt daran, daß im Supervisor-Modus keine Taskswitches mehr ausgeführt
- werden. Dies würde nur Probleme bringen. Das AES selber läuft im Supervisor-
- Modus ab, wenn GEMINI oder der DESKTOP auf seine Eingaben wartet, passiert
- erst einmal nichts mehr.
-
- SH>[...] Gibt es da eine Einflußmöglichkeit?
-
- Ja, ein ganz einfaches ACC kann schon dafür sorgen, daß alles weiterläuft:
-
- ---------------------------------------------
- #include <aes.h>
- void main(void)
- {
- appl_init();
- while(1)
- {
- evnt_timer(10,0); /* Alle 10 millisekunden */
- Syield(); /* Rechenzeit an MiNT-Prozesse abgeben */
- }
- }
- ---------------------------------------------
-
- Den Syield musst Du natürlich als gemdos(255) schreiben, da er (noch?)
- nicht in der TurboC/PurceC Bibliothek zu finden ist.
-
- ##############################################################################
- Thema: Shells:
- ------------------------------------------------------------------------------
- Von : Karsten Isakovic @ B (So, 16.02.92 13:35)
-
- Ich habe folgende Shells:
-
- KSH 4.0a/24.02.91 ggascoigne
- TCSH 6.00.02 Eric R.Smith
- BASH 1.05.1 GNU version
-
- Alle drei lassen sich ueber MW2 laden, bei der KSH hatte ich Probleme mit dem
- Finden der PROFILE.KSH. (ENV=... im INIT.RC hilft weiter)
-
- ##############################################################################
- Thema: Ausgaben von nachgestarteten Prozessen ansehen
-
- Von : Markus Müller @ K (Fr, 21.02.92 13:07)
-
- >[...] Wie ist es zu
- >bewerkstelligen, daß wir 'mal die Bildschirmausgabe zu Gesicht bekommen (z.B.
- >um festzustellen, ob ein Fehler aufgetreten ist oder auch nur aus Neugier)
- >und dann TeX weiter im Hintergrund laufen zu lassen?
-
- Wenn man in bgacc eine Shell nachstartet, die es erlaubt ihrerseits Prozesse
- im Hintergrund laufen zu lassen (z.B. MiNTINIT: `tex -para ... >datei &'), so
- kann man `datei'ganz einfach mit `more' oder `cat' anzeigen lassen (auch wenn
- diese laut `ls -l' noch eine Länge 0 hat).
-
- MfG, Markus
- --------------------------
- [Man kann auch mit 'tail' die letzten Zeilen der Datei anzeigen lassen...]
-
- ##############################################################################
- Thema: MiNT & NVDI
-
- Von : Juergen Heindel @ MS (Fr, 14.02.92 20:32)
-
- Julian Reschke @ MS schrieb am Di, 10.02.92 10:31 in ATARI ST:
- JR>MiNT 0.92 geht davon aus, daß Bconout() auf die Konsole d0 nicht zerstört
- JR>(das ist natürlich ein Bug). Deine Beta-Version von Gemini tut das aber.
- JR>Abhilfe: MiNT 0.93 installieren (müßte in den nächsten Tagen kommen).
-
- Dies auch der Fehler der zu Problemen mit NVDI fuehrt. Hier ein kleines
- Programm (Minimalversion) das den Fehler behebt bis MiNT 0.93 kommt.
-
- mfg Juergen
-
- ----------------- Schnip -------------------------------------
- text
- pranf:
- moveq.l #10,d0 ;Länge Berechnen und in D7
- lsl.l d0,d7
- move.l 4(sp),a0
- add.l 12(a0),d7
- add.l 20(a0),d7
- add.l 28(a0),d7
- add.l #$100,d7
-
- pea vinst ;Adresse der Supervisorroutine
- move.w #38,-(sp)
- trap #14
- addq.l #6,sp
- move.w #0,-(sp) ;Beenden mit Speicherplatzreservierung
- move.l d7,-(sp)
- move.w #$31,-(sp)
- trap #1
-
-
- vinst:
- move.w sr,-(sp) ;Status auf Stack retten
- ori.w #$700,sr ;Interrupts sperren !
- move.l $586,alttrap ;alten Trap retten
- move.l #ntrap,$586
- noinst:
- move.w (sp)+,sr ;alter Status
- rts
-
-
- even
- dc.b 'XBRA'
- dc.b 'HMNT'
- alttrap:
- dc.l 0
-
- ntrap:
- move.l d0,hd0
- move.l a6,ha6
- move.l (sp)+,altret
- move.l alttrap,a6
- jsr (a6)
- aus:
- move.l altret,-(sp)
- move.l ha6,a6
- move.l hd0,d0
- rts
-
- even
- hd0:
- dc.l 0
- ha6:
- dc.l 0
- altret:
- dc.l 0
-
- END
- ----------------------------------
- Von : Juergen Heindel @ MS (Sa, 29.02.92 16:57)
-
- Noch eine Bemerkung zu NVDI und MiNT. Mit dem Patchprogramm funktioniert zwar
- die Ausgabe bei NVDI jetzt, jedoch wird bei _jedem_ Aufloesungswechsel durch
- die Neuinstallation eines Bildschirmtreibers das Patchprogramm aus den Vektoren
- ausgehaengt. Man sollte es also nach dem Aufloesungswechsel neu starten (oder
- es verbessern ... oder noch besser: MiNT 0.93 [hoffentlich bald])
-
- mfg Juergen
-
- ##############################################################################
- Thema: BGACC und Anhalten nachgestarter Pozesse
-
- Von : Karsten Isakovic @ B (Mi, 19.02.92 23:47)
-
- MH>Wir starten TeX unter init, welches von bgacc aufgerufen wurde. Mit ^0
- MH>können wir dann bgacc verlassen.
- MH>TeX (wir meinen tex.ttp) allerings erwartet nach etwa einer halben
- MH>Minute eine Eingabe (was wir mit top feststellen können). Wird dann
- MH>wieder bgacc angeklickt, läuft TeX weiter.
-
- Zur Erklärung muß ich etwas weiter ausholen:
-
- BGACC arbeitet mit einem internen 2.Prozess (Server), da bei einem
- Wechsel des Hauptprogramms Probleme mit den Filehandles auftreten.(*)
- Das INIT, das in BGACC nachgestartet wurde, kommunizert mit dem
- Server über eine PIPE. Alle Ausgaben die von der Shell oder nach-
- gestarteten Prozessen gemacht werden, werden in die Pipe ausgegeben
- und der Server liest sie von dort und gibt sie auf dem Schirm aus.
- Der Server in BGACC gibt allerdings nur aus, wenn die 2.Seite
- sichtbar ist. Wenn man mit ^0 auf die GEM-Seite umschaltet, so
- werden noch maximal 4096 Bytes ausgegeben, bis die Pipe die Annahme
- von Zeichen verweigert und MiNT den ausgebenden Prozess blokiert.
- Schaltet man auf den BGACC-Schirm um, so wird vom Server zu Anfang
- sehr schnell die Pipe abgearbeitet und der Prozess läuft weiter.
- Lenkt man die Ausgaben in ein File um, so kann die Pipe auch nicht
- 'vollaufen' und der Prozess wird nicht gestoppt.
-
- (*) Der interne Server-Prozess ist notwendig, da MiNT Filehandles
- pro Prozess vergibt. Da beim Starten von GEM-Programmen der
- aktive Prozess wechselt, würde es Probleme beim Zugriff auf
- den Pipe-Filehandle geben. Genauso gäbe es Ärger mit Speicher,
- der während des nachgestarteten GEM-Programms angelegt wurde.
- Der Speicher würde dem GEM-Programm gehören und beim Verlassen
- desselben natürlich freigegeben...
-
- Gruß, Karsten
-